package com.ruoyi.common.core.web.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * @Author: Z
 * @Date: 2024/6/23 15:22
 * @Description:
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class BaseBizEntity <T extends Model<?>> extends Model<T> {

    @TableId(type = IdType.ASSIGN_UUID)
    @TableField(fill = FieldFill.INSERT)
    private String id;

    @TableField(fill = FieldFill.INSERT_UPDATE)
    @TableLogic(value = "1",delval = "-1")
    private Integer recordStatus;


    /** 分公司编码 */
    private String officeCode;

    /** 公司编码 */
    private String companyCode;


    /** 创建者 */
    @TableField(fill = FieldFill.INSERT)
    private String createBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /** 更新者 */
    @TableField(fill = FieldFill.UPDATE)
    private String updateBy;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.UPDATE)
    private Date updateTime;

    /** 备注 */
    private String remark;
}
